Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- abstract interface



  There are no free lunches on the internet

Hot data: An IT technician checks the network servers at a data farm. Alamy Photograph: Juice Images/AlamyPhysics has Newton's first law ("Every body persists in its state of being at rest or of moving uniformly straight forward, except insofar as it is compelled to change its state by force impressed"). The equivalent forinternet services is simpler, though just as general in its applicability: it says that there is no such thing as a free lunch.The strange thing is that most use...

   Free lunch,Facebook,Google,Privacy information     2011-11-21 03:03:31

  Commonly used AJAX frameworks

Have you ever wondered to design your website like desktop applications? Fortunately, with AJAX we can achieve this. By using AJAX, we no need to refresh the whole page when we just want to update a portion of a website such as the weather information or news panel. This makes our web apps look like desktop applications and bring good user experience to our visitors. You can create an XMLHttpRequest object every time when you want to initialize an AJAX call, unfortunately you may need repeat eve...

   AJAX,framework,jQuery,Dojo,YUI     2012-06-27 04:40:05

  My favorite quotes from "The design and evolution of C++"

"The design and evolution of C++" is a book written by the inventor of C++  Bjarne stroustrup. In this book, Bjarne stroustrup presents the definitive insider's guide to the design and development of the C++ programming language. Without ommitting critical details or getting bogged down in technicalities, Stroustrup presents his unique insights into the decisions that shaped C++. In this book, some statements are very impressive. They are concise but convey much information. Here I summariz...

   C++,statements,type system,compatibility     2012-07-16 10:58:10

  WireGuard VPN: Setup WG_VPN client App on Android phone and connect to local WG_VPN server on VM

We will show the detail steps about how to setup the WireGuard VPN client on an Android phone/pad and configure the VPN client to connect a WG_VPN server in local network. The setup process contents three main steps: Install WireGuard and create a key-pair in WireGuard client. Add the Android client peer information in the WireGuard server’s config file. Config the Android WireGuard client to connect to the server. The test environment network configuration:  Step 1. Install Wire...

   WIREGUARD,VPN,TUTORIAL     2020-10-24 08:46:42

  Good to Great Python reads

A col­lec­tion of python “must reads”:The Python yield key­word explainedPython’s super() con­sid­ered super!Under­stand­ing Python DecoratorsWhat is a meta­class in Python?Meta­classes DemystifiedTry/Catch for val­i­da­tion or speed?Python (and Python C API): __new__ ver­sus __init__Python “self” keywordPython and the Prin­ci­ple of Least AstonishmentA Curi­ous Course on Corou­tines and Concurr...

   Python,Reference,eBook,Reading Material     2011-11-15 11:46:12

  Open Letter to sites with annoying interfaces

Remember those childhood games where you are given two nearly identical images and your objective was to find some number of subtle differences? Well, I shouldn't have to play that game when I'm using your damn website. I show here two examples of a common practice that is plaguing the modern web. First, a clipping from a project page on github.com.     And now the second image:     See the difference? My question is this: why? That edit button is the only component of...

   Web design,User interface,User friendly,Layout     2011-12-27 09:32:10

  JavaScript JVM runs Java

The world of software is made slightly crazy because of the huge flexibility within any computer language. Once you have absorbed the idea of a compiler written in the language it compiles what else is there left to gawp at? But... a Java Virtual Machine JVM written in JavaScript seems like another level of insanity.In fact it is a quite reasonable idea which is only made mad by the usual positions that Java, the top dog, and JavaScript the underling, usually occupy. Java is compiled not to mach...

   JavaScript,JVM,BicaVM,Cross platform,JavaScript written JVM     2011-11-22 02:51:38

  HTTP is not a transport protocol, HTTP is not RPC

Recently there was a question on the forums asking why we encourage usage of HttpRequestMessage<T> / HttpResponseMessage<T> in the signature of a web api implementation. The point made in the post is that if you have an ICalculator contract which your API implements, then it’s violating SOC / inappropriate to have those messages as params and in the contract. The argument is valid when looking at HTTP from the standpoint of an RPC mechanism, which is actually a quite co...

   HTTP,Transport protocol,RPC     2012-01-19 10:14:26

  Java Polymorphism and Overriding Methods

Most Java developers will be familiar with polymorphism – we’ve all seen the example of the Dog and Cat classes inheriting from some abstract Animal class and having their say() methods produce different results. But it’s still worthwhile to look at a few simple examples to reinforce the concepts.First, we define a simple class with one instance method and one static method.public class A { public String getName() { return "I a...

   Java,Overriding,Polymorphism,Demo,Dynami     2011-10-04 14:09:06

  Windows 8 Possible Features: Ribbon, Metro, Apps, Cloud Integration

Microsoft may still be plugging away at selling Windows 7 to consumers and the enterprise, but rumors have already started about the next version of the popular operating system—dubbed "Windows 8" by many in the media. Rafael Rivera and Paul Thurrott, two bloggers with a track record of delving into Microsoft's proprietary code base, recently sparked a fresh round of chatter with a dissection of a supposed Windows 8 early build, adding their voices to a discussion that extends back to 201...

   Windows 8,New features,Touch,Metro     2011-04-11 02:10:12